package com.payment.entity.alast.wxwebpay.request;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * 微信网页支付的请求
 *
 * @author lm
 * @date 2020/7/31 10:29
 */
@Data
public class RequestWeiXinWebPay implements Serializable {

    private static final long serialVersionUID = -3911932396342018225L;

    @ApiModelProperty(value = "接口名称。此字段不可传空字符串", example = "wxWebPay", dataType = "String")
    private String tradeType;

    @ApiModelProperty(value = "访问时间戳。此字段不可传空字符串", example = "20181031256548", dataType = "String")
    private String tradeTime;

    @ApiModelProperty(value = "接口版本，本次接口值为：3.0。此字段不可传空字符串", example = "3.0", dataType = "String")
    private String version;

    @ApiModelProperty(value = "渠道编码。此字段不可传空字符串", example = "P000818", dataType = "String")
    private String partnerCode;

    @ApiModelProperty(value = "支付总金额。此字段不可传空字符串", example = "19.99", dataType = "String")
    private String payAmount;

    @ApiModelProperty(value = "支付ID。此字段不可传空字符串", example = "20190321192436", dataType = "String")
    private String payId;

    @ApiModelProperty(value = "微信分配的公众账号appId。注：接口使用除领科以外的账号收款时此字段以及mch_id，body，scene_info和key必须同时为有效值此字段，其他情况此字段允许传空字符串", example = "wxd678efh567hg6787", dataType = "String")
    private String appid;

    @ApiModelProperty(value = "微信支付分配的商户号。注：接口使用除领科以外的账号收款时此字段以及appid，body，scene_info和key必须同时为有效值此字段，其他情况此字段允许传空字符串", example = "1230000109", dataType = "String")
    private String mch_id;

    @ApiModelProperty(value = "商品描述。注：接口使用除领科以外的账号收款时此字段以及appid，mch_id，scene_info和key必须同时为有效值此字段，其他情况此字段允许传空字符串", example = "腾讯充值中心-QQ会员充值", dataType = "String")
    private String body;

    @ApiModelProperty(value = "场景信息。注：接口使用除领科以外的账号收款时此字段以及appid，mch_id，body和key必须同时为有效值此字段，其他情况此字段允许传空字符串", example = "//IOS移动应用{\"h5_info\":{\"type\":\"IOS\",\"app_name\":\"王者荣耀\",\"bundle_id\":\"com.tencent.wzryIOS\"}}//安卓移动应用{\"h5_info\":{\"type\":\"Android\",\"app_name\":\"王者荣耀\",\"package_name\":\"com.tencent.tmgp.sgame\"}}//WAP网站应用{\"h5_info\":{\"type\":\"Wap\",\"wap_url\":\"https://pay.qq.com\",\"wap_name\":\"腾讯充值\"}}", dataType = "String")
    private String scene_info;

    @ApiModelProperty(value = "微信商户平台-账户设置-安全设置-api安全,配置32位key。注：接口使用除领科以外的账号收款时此字段以及mch_id，body，scene_info和appid必须同时为有效值此字段，其他情况此字段允许传空字符串", example = "9655a2b96706f94ccf3dd0ad00727839", dataType = "String")
    private String key;

    @ApiModelProperty(value = "请求签名。此字段不可传空字符串", example = "b2a9e697bdff66049803d62ffeffccaf", dataType = "String")
    private String sign;

}
